package com.ruoyi.shop.goods.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 商品主对象 shop_goods
 * 
 * @author ruoyi
 * @date 2024-04-23
 */
public class ShopGoods extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long goodsId;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 商品类型 */
    @Excel(name = "商品类型")
    private Long goodsType;

    /** 商品编号(对应条形码) */
    @Excel(name = "商品编号(对应条形码)")
    private String barcode;

    /** 分类id */
    @Excel(name = "分类id")
    private Long categoryId;

    /** 品牌id */
    @Excel(name = "品牌id")
    private Long brandId;

    /** seo标题 */
    @Excel(name = "seo标题")
    private String title;

    /** seo关键字 */
    @Excel(name = "seo关键字")
    private String keywords;

    /** 排序号 */
    @Excel(name = "排序号")
    private Long sort;

    /** 单位名称 */
    @Excel(name = "单位名称")
    private String unit;

    /** 上架状态(0上架 -1下架) */
    @Excel(name = "上架状态(0上架 -1下架)")
    private Integer status;

    /** 销售数量 */
    @Excel(name = "销售数量")
    private Integer sales;

    /** 评价数量 */
    @Excel(name = "评价数量")
    private Integer evaluates;

    /** 浏览数量 */
    @Excel(name = "浏览数量")
    private Integer visits;

    /** 产品介绍 */
    @Excel(name = "产品介绍")
    private String content;

    /** 商品总库存 */
    @Excel(name = "商品总库存")
    private Integer stock;

    /** 商品售价 */
    @Excel(name = "商品售价")
    private BigDecimal price;

    /** 成本价格 */
    @Excel(name = "成本价格")
    private BigDecimal cost;

    /** 市场价格 */
    @Excel(name = "市场价格")
    private BigDecimal marketPrice;

    /** 会员价格 */
    @Excel(name = "会员价格")
    private BigDecimal vipPrice;

    /** 规格类型(0单规格1多规格） */
    @Excel(name = "规格类型(0单规格1多规格）")
    private Integer specType;

    /** 是否热卖(0是1否) */
    @Excel(name = "是否热卖(0是1否)")
    private Integer isHot;

    /** 是否新品(0是1否) */
    @Excel(name = "是否新品(0是1否)")
    private Integer isNew;

    /** 是否精品(0是1否) */
    @Excel(name = "是否精品(0是1否)")
    private Integer isBest;

    /** 是否开启积分兑换(0是1否) */
    @Excel(name = "是否开启积分兑换(0是1否)")
    private Integer isPoint;

    /** 购买商品抵扣积分 */
    @Excel(name = "购买商品抵扣积分")
    private BigDecimal reducePoint;

    /** 购买商品奖励积分 */
    @Excel(name = "购买商品奖励积分")
    private BigDecimal rewardPoint;

    /** 删除标志（0代表存在 2代表删除） */
    private Integer delFlag;

    /** 商品好评率 */
    @Excel(name = "商品好评率")
    private BigDecimal grade;

    /** 商品视频 */
    @Excel(name = "商品视频")
    private String video;

    /** 商品主图 */
    @Excel(name = "商品主图")
    private String image;

    /** 商品轮播图，以逗号分隔 */
    @Excel(name = "商品轮播图，以逗号分隔")
    private String images;

    /** 配送类型(默认0商城配送) */
    @Excel(name = "配送类型(默认0商城配送)")
    private Integer deliveryType;

    /** 运费类型(默认0包邮) */
    @Excel(name = "运费类型(默认0包邮)")
    private Integer freightType;

    /** 运费 */
    @Excel(name = "运费")
    private BigDecimal freight;

    /** 运费模板id */
    @Excel(name = "运费模板id")
    private Long freightId;

    /** 商品服务ids */
    @Excel(name = "商品服务ids")
    private String serviceIds;

    /** 店铺id(0自营，否则为其他店铺) */
    @Excel(name = "店铺id(0自营，否则为其他店铺)")
    private Long storeId;

    /** 租户id */
    @Excel(name = "租户id")
    private Long tenantId;

    public void setGoodsId(Long goodsId) 
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId() 
    {
        return goodsId;
    }
    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }
    public void setGoodsType(Long goodsType) 
    {
        this.goodsType = goodsType;
    }

    public Long getGoodsType() 
    {
        return goodsType;
    }
    public void setBarcode(String barcode) 
    {
        this.barcode = barcode;
    }

    public String getBarcode() 
    {
        return barcode;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }
    public void setBrandId(Long brandId) 
    {
        this.brandId = brandId;
    }

    public Long getBrandId() 
    {
        return brandId;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setKeywords(String keywords) 
    {
        this.keywords = keywords;
    }

    public String getKeywords() 
    {
        return keywords;
    }
    public void setSort(Long sort) 
    {
        this.sort = sort;
    }

    public Long getSort() 
    {
        return sort;
    }
    public void setUnit(String unit) 
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setSales(Integer sales) 
    {
        this.sales = sales;
    }

    public Integer getSales() 
    {
        return sales;
    }
    public void setEvaluates(Integer evaluates) 
    {
        this.evaluates = evaluates;
    }

    public Integer getEvaluates() 
    {
        return evaluates;
    }
    public void setVisits(Integer visits) 
    {
        this.visits = visits;
    }

    public Integer getVisits() 
    {
        return visits;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setStock(Integer stock) 
    {
        this.stock = stock;
    }

    public Integer getStock() 
    {
        return stock;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setCost(BigDecimal cost) 
    {
        this.cost = cost;
    }

    public BigDecimal getCost() 
    {
        return cost;
    }
    public void setMarketPrice(BigDecimal marketPrice) 
    {
        this.marketPrice = marketPrice;
    }

    public BigDecimal getMarketPrice() 
    {
        return marketPrice;
    }
    public void setVipPrice(BigDecimal vipPrice) 
    {
        this.vipPrice = vipPrice;
    }

    public BigDecimal getVipPrice() 
    {
        return vipPrice;
    }
    public void setSpecType(Integer specType) 
    {
        this.specType = specType;
    }

    public Integer getSpecType() 
    {
        return specType;
    }
    public void setIsHot(Integer isHot) 
    {
        this.isHot = isHot;
    }

    public Integer getIsHot() 
    {
        return isHot;
    }
    public void setIsNew(Integer isNew) 
    {
        this.isNew = isNew;
    }

    public Integer getIsNew() 
    {
        return isNew;
    }
    public void setIsBest(Integer isBest) 
    {
        this.isBest = isBest;
    }

    public Integer getIsBest() 
    {
        return isBest;
    }
    public void setIsPoint(Integer isPoint) 
    {
        this.isPoint = isPoint;
    }

    public Integer getIsPoint() 
    {
        return isPoint;
    }
    public void setReducePoint(BigDecimal reducePoint) 
    {
        this.reducePoint = reducePoint;
    }

    public BigDecimal getReducePoint() 
    {
        return reducePoint;
    }
    public void setRewardPoint(BigDecimal rewardPoint) 
    {
        this.rewardPoint = rewardPoint;
    }

    public BigDecimal getRewardPoint() 
    {
        return rewardPoint;
    }
    public void setDelFlag(Integer delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() 
    {
        return delFlag;
    }
    public void setGrade(BigDecimal grade) 
    {
        this.grade = grade;
    }

    public BigDecimal getGrade() 
    {
        return grade;
    }
    public void setVideo(String video) 
    {
        this.video = video;
    }

    public String getVideo() 
    {
        return video;
    }
    public void setImage(String image) 
    {
        this.image = image;
    }

    public String getImage() 
    {
        return image;
    }
    public void setImages(String images) 
    {
        this.images = images;
    }

    public String getImages() 
    {
        return images;
    }
    public void setDeliveryType(Integer deliveryType) 
    {
        this.deliveryType = deliveryType;
    }

    public Integer getDeliveryType() 
    {
        return deliveryType;
    }
    public void setFreightType(Integer freightType) 
    {
        this.freightType = freightType;
    }

    public Integer getFreightType() 
    {
        return freightType;
    }
    public void setFreight(BigDecimal freight) 
    {
        this.freight = freight;
    }

    public BigDecimal getFreight() 
    {
        return freight;
    }
    public void setFreightId(Long freightId) 
    {
        this.freightId = freightId;
    }

    public Long getFreightId() 
    {
        return freightId;
    }
    public void setServiceIds(String serviceIds) 
    {
        this.serviceIds = serviceIds;
    }

    public String getServiceIds() 
    {
        return serviceIds;
    }
    public void setStoreId(Long storeId) 
    {
        this.storeId = storeId;
    }

    public Long getStoreId() 
    {
        return storeId;
    }
    public void setTenantId(Long tenantId) 
    {
        this.tenantId = tenantId;
    }

    public Long getTenantId() 
    {
        return tenantId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("goodsId", getGoodsId())
            .append("goodsName", getGoodsName())
            .append("goodsType", getGoodsType())
            .append("barcode", getBarcode())
            .append("categoryId", getCategoryId())
            .append("brandId", getBrandId())
            .append("title", getTitle())
            .append("keywords", getKeywords())
            .append("sort", getSort())
            .append("unit", getUnit())
            .append("status", getStatus())
            .append("sales", getSales())
            .append("evaluates", getEvaluates())
            .append("visits", getVisits())
            .append("content", getContent())
            .append("stock", getStock())
            .append("price", getPrice())
            .append("cost", getCost())
            .append("marketPrice", getMarketPrice())
            .append("vipPrice", getVipPrice())
            .append("specType", getSpecType())
            .append("isHot", getIsHot())
            .append("isNew", getIsNew())
            .append("isBest", getIsBest())
            .append("isPoint", getIsPoint())
            .append("reducePoint", getReducePoint())
            .append("rewardPoint", getRewardPoint())
            .append("delFlag", getDelFlag())
            .append("grade", getGrade())
            .append("video", getVideo())
            .append("image", getImage())
            .append("images", getImages())
            .append("deliveryType", getDeliveryType())
            .append("freightType", getFreightType())
            .append("freight", getFreight())
            .append("freightId", getFreightId())
            .append("serviceIds", getServiceIds())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("storeId", getStoreId())
            .append("tenantId", getTenantId())
            .toString();
    }
}
